package com.lm.liaoming.widght;

import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewpager.widget.ViewPager;

/**
 * created by 韦敏敏
 * on 2019/11/21
 */
// 禁止左右滑动的viewPager
public class MyViewPager extends ViewPager {
    private boolean isCanScroll = true;

    /**
     * 设置其是否能滑动换页
     * @param isCanScroll  false 不能换页， treu可以滑动换页
     */
    public void setCanScroll(boolean isCanScroll){
        this.isCanScroll = isCanScroll;
    }
    public MyViewPager(@NonNull Context context) {
        super(context);
    }
    public MyViewPager(@NonNull Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
    }
    // 该事件一般不做处理
    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        return super.dispatchTouchEvent(ev);  // return true 不可以
    }

    /**
     *  是否拦截
     *  拦截：会走到自己的onTouchEvent方法里面来
     *  不拦截：事件传递给子View
     * @param ev
     * @return
     */
    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        return isCanScroll && super.onInterceptTouchEvent(ev);
    }

    @Override
    public boolean onTouchEvent(MotionEvent ev) {
        return isCanScroll &&  super.onTouchEvent(ev);
    }
}
